package com.rustic.server.query;

import cn.xy.base.server.bean.IPage;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.Min;
import java.util.Date;

/**
 * 表[event_activity]对应Query查询类
 *
 * @author auto
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class EventActivityUserListQuery extends IPage {

    /**
     * 关联乡村id
     */
    @Min(value = 1, message = "关联乡村不能为空")
    @ApiModelProperty(value = "关联乡村id", dataType = "int")
    private int rusticId;

    /**
     * 事件/活动
     */
    @Length(min = 0, max = 100, message = "事件/活动长度为0-100个字符")
    @ApiModelProperty(value = "事件/活动", dataType = "String")
    private String name;

    /**
     * 事件/活动类型(1 举行活动,2 公告,3 政策)id
     */
    @ApiModelProperty(value = "事件/活动类型(1举行活动,2公告,3政策)id", dataType = "int")
    private int type;

    /**
     * 活动开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "开始活动开始时间(yyyy-MM-dd HH:mm)", dataType = "Date")
    private Date startStartTime;

    /**
     * 活动开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "结束活动开始时间(yyyy-MM-dd HH:mm)", dataType = "Date")
    private Date endStartTime;

    /**
     * 活动结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "开始活动结束时间(yyyy-MM-dd HH:mm)", dataType = "Date")
    private Date startEndTime;

    /**
     * 活动结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @ApiModelProperty(value = "结束活动结束时间(yyyy-MM-dd HH:mm)", dataType = "Date")
    private Date endEndTime;

    /**
     * 状态(1发布 2下架)
     */
    @ApiModelProperty(value = "状态(1发布 2下架)", dataType = "int")
    private int status;

}
